package oj;

import java.util.ArrayDeque;
import java.util.Deque;

/**
 * @author 郝文雪
 * @date 2022/9/5 16:49
 * @Description Test
 */
public class LC735 {
    public int[] asteroidCollision(int[] asteroids) {
        Deque<Integer> d=new ArrayDeque<>();
        for(int a:asteroids){
            boolean ok=true;
            while(!d.isEmpty() && ok && a<0 && d.peekLast()>0){
                int x=d.peekLast();
                int y=-a;
                if(x<=y) d.pollLast();
                if(x>=y) ok=false;
            }
            if(ok) d.addLast(a);
        }
        int size=d.size();
        int[] arr=new int[size];
        while(!d.isEmpty()){
            arr[--size]=d.pollLast();
        }
        return arr;
    }
}
